home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
doors_2
/
tview294.zip
/
TEXTVIEW.DOC
< prev
next >
Wrap
Text File
|
1992-11-22
|
29KB
|
644 lines
┌─────────────────────────────────────────────────────────────────┐
│ TEXTVIEW 2.94 │
│ A ProKit based Door for PCBoard 14.5x │
│ By Joseph Sheppard - The Ledge PCBoard (818) 896-4015 │
└─────────────────────────────────────────────────────────────────┘
───────────
DESCRIPTION
───────────
Textview allows the Sysop to make ASCII and ANSI files available to
callers in an online magazine format. It includes an option to allow
your users to download from a list of files you specify. The sysop can
also give extra time in the door to users of a defined security level.
Most of the PCBoard function keys are supported, including Sysop Chat
(F10).
Textview works with modems connected to standard and non-standard
comports. Fossil driver support is included for multi-port hardware.
See the section titled NON-STANDARD PORTS in this document for more
information.
The door is written to be "transparent" so the sysop can use it in many
different ways. I'm using Textview for three different doors on my
system. One is an online magazine, another is a New User door where my
unverified callers can go to read the bulletins and download a copy of
my listing of Shareware and Public Domain files. Then there is the
"Support" door that allows first time callers (without download access
on the main board) to download the latest copies of my work, along with
the various third party support programs that I recommend.
Your users can shell to another program or batch file from inside
TextView if you wish. This can be any kind of routine you like as long
as you have enough free memory to support it.
If you have software that you want to distribute to users of a certain
security level only, you can make the TextView door available to users
with the same security level as your customers or higher. When your
customer goes into the TextView door, he can read new product
information and download an ZIP of the latest version of your software.
You choose the download path, so you can put the files in a directory
only accessible via the TextView door. You can even give him extra
time when he is in the door, which will be deducted when he exits the
door, restoring the original time he had left when he entered.
The following user created files are supported in both ASCII and ANSI:
Welcome screen (@TVHELLO & @TVHELLOG
Menu screen (@TVMENU & @TVMENUG)
Download Directory (@TVDIR & @TVDIRG)
Goodbye Screen (@TVBYE & @TVBYEG)
TextView can display as many files as you can support on your system
ASCII and ANSI versions are displayed depending on which mode your
caller is in. The caller has the option to toggle between ANSI and
ASCII display mode. Both file formats (ASCII/ANSI) are supported, but
not required. If one or the other format is unavailable, the caller
will be shown what is available for that menu selection.
TextView will also convert PCBoard @x color codes on the fly,
as well as text @VARIABLES@.
Command stacking is supported, so callers can capture several menu
selections with a command such as 1;2;3;4;NS.
TextView reports to the caller log all files read, downloaded and all
invalid commands if configured to do so. Files read can also be logged
to a separate file.
If Downloading is to be allowed inside the door it is REQUIRED that
DSZ.COM or DSZ.EXE be in either the DOS path, or the same directory as
TV.EXE. DSZ is a shareware program marketed by Omen Technology. It is
NEVER included with TextView. You can find the latest version of DSZ
on most BBS systems. If you can't find it locally, you can always
download a copy of it from my BBS. Although you'll find that I have a
mail-in validation rule, you will be able to enter the SUPPORT DOOR and
download the latest version of TextView and any of the third party
support programs on your first call.
─────
SETUP
─────
Here is a description of the files you will need to get started:
1. Filename: TV.EXE
Purpose: Textview program
Location: Any directory that includes TV.CNF
Multi-Node Notes: One copy should be fine, Share is supported.
2. Filename: TV.CNF
Purpose: Defines parameters for TV.EXE
Location: Any directory that includes TV.EXE
Multi-Node Notes: One copy of this should be able to handle all
nodes as the \PCB directory for each node is
pointed to in the TEXTVIEW file.
Sample File:
INTERRUPT
D:\TV
20
0
0
M
D:\TV\DL
C
DEFAULT
TextView
N
D:\PCB\GEN\PCBSTATS.DAT
NONE
Explanation:
INTERRUPT: This is the communications driver type. Most systems will
work with the Interrupt driver. If you use a Fossil driver to
communicate with special hardware such as a multi-port board, place
the word FOSSIL on this line. See the section titled NON-STANDARD
PORTS in this document for more information regarding connections to
other than standard COM1: and COM2:.
D:\TV: This is the path to the files you want to display. I would
suggest putting these files in their own directory.
20: This is the number of files available for display. It can be any
number higher than 1.
0: Replace this with the security level you want to all more time in
the door for. For instance if you are providing product support for
your level 50's and up, AND you want to give them more time in the
door, put a 50 here. If you don't want to give anyone more time put
a 0 here.
0: Replace this with the number of minutes you want to add to the
security level defined above. If you want to give your customers an
extra 15 minutes in the door, then put a 15 here. If you don't want
to add any time, put a 0 here.
M: This line tells TextView how you want to handle downloading. Your
choices are: Single file, Multiple files or No files (downloading
not allowed). If you only have one file that you want available for
downloading, then put the letter S on this line. If you have a list
of files you want the user to be able to download then put an M on
this line. If you don't want the user to be able to download at
all, put the letter N on this line (if N is selected the download
option won't appear on the command line at all).
D:\TV\DL: Replace this with the path to the files you want the user
to be able to download. Be sure that there is nothing in this
directory that you don't want downloaded because the user will be
able to take whatever is there. Please don't call me and yell at me
because a user downloaded the USER file while in TextView. The only
way this could happen is if you screw up and put \PCB\MAIN on this
line. IMPORTANT: If you have selected the Single file option (an S
on line 6) then you will need to add the filename to the path
(example D:\TV\DL\FILES.ZIP). If you aren't going to allow
downloading, then put the word NONE on this line.
C: TextView will write to the CALLER log, a file (with the name
of your door plus the extension .LOG), both CALLER log and
file, or you can set it to not write at all. These options can
be set by putting one of the following letters on line 8: C, F,
B, N (Caller, File, Both or None). If you set this line to
NONE by putting the letter "N" on this line, then the
DOWNLOAD.TXT file will not be updated after a download, keeping
that file and the CALLER files in balance.
DEFAULT: This line affects Registered Versions of TextView only.
Registered Sysops may place a filename on this line, which must
include the path if the file isn't in the same directory as TV.EXE.
The file named on this line must be an ASCII file containing the
names and paths of the files to be displayed. This feature is
designed to cut maintenance time for Sysops who display online
magazines which are updated frequently, but have the same filenames
week to week. USAToday and NewsBytes are examples of these types of
magazines. The files must be listed in the order that they appear
on the menu. For example, a file that had these three lines:
D:\PCB\GEN\WELCOME
D:\PCB\GEN\NEWUSER
D:\PCB\MAIN\CALLER
Would cause TextView to display your WELCOME screen if the caller
chose #1 off the menu. Your NEWUSER file if he chose #2 and your
CALLER log if he picked #3. The number of files listed in this file
MUST be the same as the number you have on line 3 of the .CNF file.
The files NBYTES.TV and USA.TV (included in TVSAMPLE.ZIP) are
examples of how this option can be used for easy maintenance of the
Newsbytes and USAToday. And can be activated by registered users if
they specify one of these filenames on line 9.
TextView: You can give your TextView door a name that will appear on
the status line of the local screen. This is handy for people
running multiple TextView doors. On my system I have TextView doors
called "New User", "Support", "Newsbytes" and "Newsbytes Demo".
Putting these names on this line helps me figure out where my users
are. This line is limited to a maximum of 20 characters.
N: TextView can run as a "Sub-Door". This means that you can run
one door, then follow it with TextView automatically. The main
purpose for this is to display game door scorecards. One put the
letter Y on this line followed by the desired prompt, and TextView
will give the option to answer (Y)es, (N)o, (G)oodbye before
running. For a score door, the sysop might put the following on
this line:
Y;View the Scorecards?
TextView will show:
View the Scorecards?
(Y)es, (N)o, (G)oodbye: _
If the caller answers Yes, then TextView is run, and he is shown the
material. If he answers No, then he is returned to the BBS. If he
answers Goodbye then he is properly logged off.
This feature is valuable if you want to give a user certain material
to read before or after a particular door. Leave the letter N on
this line if you don't want TextView to act as a "Sub-Door".
D:\PCB\GEN\PCBSTATS.DAT: This is the location of your PCBSTATS.DAT
file. This will allow TextView to update your Call Waiting screen.
If you don't want it updated, leave this line blank. PCBSTATS.EXE
(distributed with PCBoard) must be in your DOS path for this to
work!
NONE: Replace this with the name of a batch file or program you
would like your users to be able to run from the TextView menu. This
can be any kind of routine you like as long as you have enough free
memory to support it. Programs that write directly to screen will
need a program like Marshall Dudley's "Doorway" to redirect the
output. The program or batch file specified must be in the same
directory TextView is run from, or in the DOS path. The user can
run the routine by typing the word you put on this line. For
example, if the routine you want to run is called REGISTER, then you
would need a program called REGISTER.EXE or REGISTER.COM, or a batch
file called REGISTER.BAT in the path. Then your caller would type
the word REGISTER from the TextView command line to run the routine.
3. Filename: TEXTVIEW
Purpose: Used by PCBoard to run the TextView door
Location: Your Main PCBoard directory (for example C:\PCB)
Multi-Node Notes: One in each PCBoard directory (example C:\PCB1,
C:\PCB2, C:\PCB3). Change DSZPORT parameter to
reflect your comport number.
Sample file:
ECHO OFF
CD \PCB\DOORS
SET DSZPORT=1
TV TV.CNF C:\PCB
CD \PCB
IF EXIST EVENT.BAT EVENT
ECHO ON
BOARD
Explanation:
CD \PCB\DOORS: changes to the directory where you have stored your
TEXTVIEW.EXE and TEXTVIEW.CNF files. Change this line to reflect the
drive and directory you are using to store these files.
SET DSZPORT=1: This tells DSZ what port you are using. If you are
on com2 then change it to SET DSZPORT=2. It's VERY important that
multi-node systems change this parameter in each \PCBx directory to
show what port dsz needs to use. If you aren't going to support the
download feature, you can just leave this line out.
TV TV.CNF C:\PCB: Runs Textview and gives it it's parameters via the
TV.CNF file. Change the C:\PCB to reflect the location of your main
PCBoard directory. Multi-node users will need to remember to change
this for each node (example C:\PCB, C:\PCB2, etc.)
CD \PCB: Changes back to your main pcboard directory
IF EXIST EVENT.BAT EVENT: If you have an event pending, TVIEW will
cut your callers time and run the event. If you don't run an event,
you can take this line out.
BOARD: executes your BOARD.BAT file
4. Filename: PROT.DAT
Purpose: Protocol Information
Location: Must be in the same directory as TV.EXE. Required
if you will be allowing downloading inside the
door.
Multi-Node Notes: No special considerations for multiple nodes. One
copy of each file can be shared by all nodes.
Sample File:
X,N,Xmodem
O,N,Xmodem-1k (Old Ymodem)
Y,N,Ymodem (Ymodem-Batch)
Z,N,Zmodem
F,Y,Xmodem-1k-G (Old Ymodem-G)
G,Y,Ymodem-G (Ymodem-G-Batch)
This file is similar to PCBoard's PCBPROT.DAT. Some of the
entries are different, so users must NOT use the same file.
The meaning of the entries is as follows:
X,N,Xmodem
X= Protocol Letter to be displayed on the protocol menu in the
door. This is also the name of the batch file used to dun
this protocol (X.BAT).
N= Error correcting modem required? (Y/N). Put a N on this
line if the protocol does not require an error correcting
modem. Put a Y on this line if it does. This will prevent
novice callers from accidentally using protocols like Ymodem-G
with a non-MNP modem. If you have a Y on this line and the
caller is NOT using an MNP modem, then the protocol will not
show on the menu. This isn't a bug, it's a feature!
If you will not be allowing downloading inside the door, then
this file, and the download batch protocols are not needed.
This file is compatible with PROT.DAT used in the BBSList Door,
so if TV.EXE and BLIST.EXE are in the same directory they can
share this file.
I would warn against using protocols that require any driver program
other than DSZ, as many of these programs fail to restore the com
port to it's original state and may cause lockups on your system.
5. Filename: X.BAT, Y.BAT, Z.BAT, G.BAT
Purpose: Controls downloading function
Location: Same directory as your TV.EXE file
Multi-Node Notes: No need to duplicate these files for every node.
The DSZPORT option in the TEXTVIEW file will set
the correct port for each node before the .BAT
is run.
Sample File:
@echo off
echo off
SET DSZLOG=%2\DSZ.LOG
dsz handshake on sz %1
Explanation:
The names of these files MUST correspond with the menu letters you
choose in position 1 of PROT.DAT. So, if you add Lynx protocol
to your TextView Door, then you will need to add a batch file
called L.BAT, and a line in PROT.DAT that looks like this:
L,N,Lynx
Most of the stuff included in these batch files is standard. Here's
a brief explanation of each line in the sample:
SET DSZLOG=%2\DSZ.LOG: This tells DSZ to create a file on your disk
that TextView will read in order to report cps and transfer errors
to your CALLERx and DOWNLOAD.TXT files. This line is mandatory.
Please do not change it.
dsz handshake on sz %1 : This is the command line given to DSZ. If
you are a big DSZ expert, please, be my guest and change this to
your specs. NOTE: DSZ.COM or DSZ.EXE must be in your DOS path or in
the same directory as TV.EXE. If you get a "bad command or filename"
message and the transfer aborts then you have probably not put DSZ
in the path. Also, DSZ is case sensitive, don't jack around with the
command line and change it into all upper case. If you aren't a bona
fide DSZ expert, you should probably leave these command lines
alone!
Note: You must enter TEXTVIEW in your DOORS.DAT file. Mine looks like
this:
PRODOOR,,30
PROBANK,,30
PROWHO,,30
BBS,,30
* TEXTVIEW,,30
SYSTEMS,,30
QWKMAIL,,30
─────────────────
FILES YOU PROVIDE
─────────────────
The following files can be used to enhance your TextView door. You
don't have to create them. If you don't, then the code will handle it
by skipping to the next step, so if you don't want to support an ANSI
version of each file, simply don't include it. If you do use these
they must be in the path defined by you in TV.CNF. These files can be
created with any ASCII or ANSI editor.
TVHELLO & TVHELLOG: These are like PCBoard's WELCOME & WELCOMEG. will
be shown to your callers inside the door.
TVDIR & TVDIRG: This is the directory of files you are offering for
download in the TextView door. If you don't allow downloading, then
this file need exist. You can use any of the PCBoard directory
maintenance programs to create and maintain this file, including
PCBFILER.
TVBYE & TVBYEG: This the last thing the caller sees before leaving the
door to go back to PCBoard.
TVx & TVxG: These are the actual files available for viewing. x equals
the menu number of the file (So, TV1 and TV1G would be Menu item 1). It
is VERY important to remember to rename each feature in this manner.
This is written in the same manner as the PCBoard Bulletins (BLT1,
BLT1G, etc.). Registered users may specify their own filenames in a
file defined on line 9 of the .CNF file.
──────────────────
NON-STANDARD PORTS
──────────────────
Users of Multi-Port boards should use the built-in Fossil support
provided. To activate this feature, simply place the word FOSSIL in
line 1 of your configuration file. Fossil users do not need to set the
COMBASE and COMIRQ variables described below.
TextView works directly with other non-standard serial port
configurations. Here are the defaults:
Port Base Address IRQ
COM1 3F8 IRQ4
COM2 2F8 IRQ3
COM3 3E8 IRQ4
COM4 2E8 IRQ3
COM5 Undefined Undefined
COM6 Undefined Undefined
COM7 2E8 IRQ5
COM8 3E8 IRQ5
If you use these setups, you can simply allow TextView to read your
port number from your PCBoard setup.
If your port is setup differently, then TextView will look for two
environment variables called COMBASE and COMIRQ.
COMBASE must be converted from hex to decimal in order to work properly
(Example 744 for 2E8). A utility called HEX2DEC.EXE is included to
assist in changing your hex port address to decimal.
COMIRQ is simply the IRQ number being used.
For example, if you were going to run COM7 with a Base Address of 2F8
on IRQ2, at the DOS prompt, or in a batch file you would type:
SET COMBASE=760
SET COMIRQ=2
───────────────
TIPS AND TRICKS
───────────────
You can run several TextView doors without running several copies of
TextView. All you have to do is have different batch files for PCBoard
to run TextView with. For instance, I am running three TextView doors
right now. I use one batch file called BBSTN that runs TextView with
the command TV BBSTN.CNF, and another called NEWSBYTES that runs
TextView with the line TV NEWS.CNF.
The expanded configurability of PCBoard 14 offers an opportunity to not
have to repeat files on your disk if you want certain files used by
PCBoard and TextView. For instance, I run one TextView Door as a New
User door, where I hold all the bulletins of interest to first time
callers. So that I didn't have to have two copies of each of these
bulletins (one as BLT1 and another as TV1) I went into PCBSETUP and
defined the path and filenames of those bulletins or system files
(NEWUSER, etc) as TV files. That way PCBoard calls them from my
TextView directory rather than the \PCB\GEN directory.
TextView has been successfully run on some non-PCBoard systems by
using conversion programs. Some tips on running TextView with
these programs are available in NOTPCB.DOC, which is distributed
with TextView.
──────────────
TEXT VARIABLES
──────────────
All display files will respond to the standard PCBoard text
variables, plus a few that are unique to Prokit doors. Place the
variables anywhere in any line to be displayed by TextView and
they will be translated.
Standard PCBoard Text Variables:
@USER@ complete name of the caller (first & last - all caps)
@FIRST@ first name of the user (first letter capitalized)
@CITY@ city and state of caller (all caps)
@DATAPHONE@ caller's business/data phone number
@HOMEPHONE@ caller voice phone number
@SECURITY@ users current security level including @conf. add.
@EXPDATE@ subscription expiration date
@LASTDATEON@ last date on (mm-@dd-@yy format)
@LASTTIMEON@ last time on (@hh:mm format)
@NUMTIMESON@ number of times on system
@INCONF@ conference the caller is currently in
@DLBYTES@ total bytes downloaded - all calls
@DLFILES@ total files downloaded - all calls
@UPBYTES@ total bytes @uploaded - all calls
@UPFILES@ total files uploaded - all calls
@TIMELIMIT@ time allowed from @PWRD file
@TIMELEFT@ time remaining that call @incl. all credits, etc.
@TIMEUSED@ minutes used since @logon
@BYTELIMIT@ bytes allowed from PWRD file
@BYTESLEFT@ remaining bytes available for download for that day
@DAYBYTES@ bytes downloaded so far that day
@SYSTIME@ host system in (hh:mm format)
@SYSDATE@ host date in (mm-dd-yy format)
@BOARDNAME@ the name of your BBS
@NUMCALLS@ number of system callers
Unique Prokit Text Variables:
$NOMACS$ Disables all text variables for file being displayed
@CLS@ Clears the screen
@MORE@ Causes text to stop and a "More?" prompt
$RED$ standard ANSI color codes - RED
$GREEN$ GREEN text
$YELLOW$ YELLOW text
$BLUE$ BLUE text
$MAGENTA$ MAGENTA text
$CYAN$ CYAN text
$WHITE$ WHITE text
$GRAY$ GRAY text
$DEFAULT$ the "default color" according to PCBOARD.DAT
$NONSTOP$ display in non-stop mode
$CLREOL$ clear to end of line
────────────
REGISTRATION
────────────
If you find that your are still running TextView 30 days after setting
it up, or if you'd like to unlock the registered features, please call
The Ledge PCBoard at 818-896-4015 and type REGISTER at the main menu
command prompt. This will allow you to register by MASTERCARD, VISA or
AMERICAN EXPRESS.
If you prefer to pay by check or money order, please fill out
REGISTER.TXT and send it in with a shareware contribution of $20.00 in
US Funds.
Registered users will receive a file called TV.SYS that when present in
the same directory as TV.EXE will bypass all "unregistered" references,
bypass the "Press Enter to Continue" prompt before TVHELLO is
displayed, and will allow you to use line 9 of the .CNF file to
specify your own custom filenames for display instead of TV1, TV2, TV3,
etc.
Registered copies also have an additional command available called
(S)earch. Using the text-search function, a user may scan specific
files, or all files by keywords to quickly find subjects of
interest.
Valid TV.SYS files will automatically register this version of TextView
and ALL FUTURE VERSIONS! There is no need to call my BBS each time I
release a new TV.EXE to get your registered copy. Just download it
from any source and your TV.SYS file will unlock the new version
for you just by being there no mumbo-jumbo, no passwords...just run
the door!
I can be reached at my BBS, The Ledge PCBoard (818) 896-4015 -
HST/V.32bis, U'NI-net Echomail Network (for which I am the
International host), Compuserve 76175,623 or US Mail at the address
listed in REGISTER.TXT.
If you contact me on my BBS, please ignore the mail-in validation
procedure. Simply leave me a [C]omment with your questions and I will
validate you as a "visiting Sysop" without delay.
LEDGE SUPPORT DOOR: Please note that on your first call to the ledge,
you can enter the Ledge Support door. It is a TextView door that will
allow you to view the current "TEXTVIEW.DOC" file and download the very
latest version of TextView along with the latest version of DSZ. You
DON'T have to be a registered user on The Ledge to use this door!
Please let me know you called though so I can validate you for future
calls.
While this door performs fine on my system, which consists of an AMI
386, and Phoenix 286's running under a LANtastic network, I can't
guarantee that it will work at all on yours. If you have a problem,
contact me and I will attempt to solve the problem.
──────
THANKS
──────
Thanks to Samuel Smith, the genius behind Prodoor and ProKit. I
actually learned Turbo Pascal so that I could write TextView using
Sam's fantastic kit. Anyone who wants to write custom doors should
take a look at what Sam has provided in PROKITxx.ZIP.
Thanks to Charles Shapiro, Sysop of Absolut(e)ly Temporary (702)
254-8601 for his valuable help in beta testing TextView.
Thanks to Mark Rapp, Sysop the MicroSellar BBS (201) 239-1346 for some
great technical suggestions that were very helpful in the creation
of the TextView door.
─────────
PROBLEMS?
─────────
If you have read this file and still have problems setting up the door,
take a look at the file called PROBLEMS in this archive. If your
problem isn't covered here or in the PROBLEMS file, let me know and I
will cover it in the next version of TextView.
──────────
DISCLAIMER
──────────
I make no warranty of any kind, express or implied, including without
limitation, any warranties of merchantability and/or fitness for a
particular purpose. I shall not be liable for any damages, whether
direct, indirect, special or consequential arising from a failure of
this program to operate in the manner desired by the user. I shall not
be liable for any damage to data or property which may be caused
directly or indirectly by the use of this program.
IN NO EVENT WILL I BE LIABLE TO YOU FOR ANY DAMAGES, INCLUDING ANY LOST
PROFITS, LOST SAVINGS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES
ARISING OUT OF YOUR USE OR INABILITY TO USE THE PROGRAM, OR FOR ANY
CLAIM BY ANY OTHER PARTY.